﻿using System;

namespace Wosperry.QuartzJob
{
    /// <summary>
    /// 自定义任务参数
    /// </summary>
    public class QuartzJobOptions
    {
        /// <summary>
        /// 触发器名字（必填）
        /// </summary>
        public string TriggerName { get; set; }
        /// <summary>
        /// Job分组名（必填）
        /// </summary>
        public string GroupName { get; set; }
        /// <summary>
        /// Job名字（必填）
        /// </summary>
        public string JobName { get; set; }
        /// <summary>
        /// 描述（可空）
        /// </summary>
        public string Description { get; set; }
        /// <summary>
        /// 开始时间（可空，为空时立刻开始）
        /// </summary>
        public DateTime? StartAt { get; set; } = null;
        /// <summary>
        /// 结束时间（可空）
        /// </summary>
        public DateTime? EndAt { get; set; } = null;
        /// <summary>
        /// 重复次数：0执行一次，1执行2次，小于0时一直循环
        /// </summary>
        public int RepeatTimes { get; set; } = -1;
        /// <summary>
        /// 周期 = IntervalHours + IntervalMinutes + IntervalSeconds
        /// 周期为0时，按默认10秒执行一次
        /// </summary>
        public (double Hours,double Minuts, double Seconds) Interval { get; set; }
    }
}
